home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / fish / 001-100 / 001-025 / 022 / lemacs / ebind.h < prev    next >
C/C++ Source or Header  |  1995-03-17  |  6KB  |  232 lines

  1. /*    EBIND:        Initial default key to function bindings for
  2.             MicroEMACS 3.2
  3.  
  4.             written by Dave G. Conroy
  5.             modified by Steve Wilhite, George Jones
  6.             greatly modified by Daniel Lawrence
  7. */
  8.  
  9. /*
  10.  * Command table.
  11.  * This table  is *roughly* in ASCII order, left to right across the
  12.  * characters of the command. This expains the funny location of the
  13.  * control-X commands.
  14.  */
  15. KEYTAB  keytab[NBINDS] = {
  16.     {CTRL|'A',        gotobol},
  17.     {CTRL|'B',        backchar},
  18.     {CTRL|'C',        insspace},
  19.     {CTRL|'D',        forwdel},
  20.     {CTRL|'E',        gotoeol},
  21.     {CTRL|'F',        forwchar},
  22.     {CTRL|'G',        ctrlg},
  23.     {CTRL|'H',        backdel},
  24.     {CTRL|'I',        tab},
  25.     {CTRL|'J',        indent},
  26.     {CTRL|'K',        killtext},
  27.     {CTRL|'L',        refresh},
  28.     {CTRL|'M',        newline},
  29.     {CTRL|'N',        forwline},
  30.     {CTRL|'O',        openline},
  31.     {CTRL|'P',        backline},
  32.     {CTRL|'Q',        quote},
  33.     {CTRL|'R',        backsearch},
  34.     {CTRL|'S',        forwsearch},
  35.     {CTRL|'T',        twiddle},
  36.     {CTRL|'V',        forwpage},
  37.     {CTRL|'W',        killregion},
  38.     {CTRL|'Y',        yank},
  39.     {CTRL|'Z',        backpage},
  40.     {CTLX|CTRL|'B',        listbuffers},
  41.     {CTLX|CTRL|'C',        quit},          /* Hard quit.           */
  42.     {CTLX|CTRL|'F',        filefind},
  43.     {CTLX|CTRL|'I',        insfile},
  44.     {CTLX|CTRL|'L',        lowerregion},
  45.     {CTLX|CTRL|'M',        delmode},
  46.     {CTLX|CTRL|'N',        mvdnwind},
  47.     {CTLX|CTRL|'O',        deblank},
  48.     {CTLX|CTRL|'P',        mvupwind},
  49.     {CTLX|CTRL|'R',        fileread},
  50.     {CTLX|CTRL|'S',        filesave},
  51.     {CTLX|CTRL|'U',        upperregion},
  52.     {CTLX|CTRL|'V',        viewfile},
  53.     {CTLX|CTRL|'W',        filewrite},
  54.     {CTLX|CTRL|'X',        swapmark},
  55.     {CTLX|CTRL|'Z',        shrinkwind},
  56.     {CTLX|'?',        deskey},
  57.     {CTLX|'!',        spawn},         /* Run 1 command.       */
  58.     {CTLX|'=',        showcpos},
  59.     {CTLX|'(',        ctlxlp},
  60.     {CTLX|')',        ctlxrp},
  61.     {CTLX|'^',        enlargewind},
  62.     {CTLX|'1',        onlywind},
  63.     {CTLX|'2',        splitwind},
  64.     {CTLX|'B',        usebuffer},
  65.     {CTLX|'C',        spawncli},      /* Run CLI in subjob.   */
  66. #if    V7 & BSD
  67.     {CTLX|'D',        bktoshell},    /* suspend emacs */
  68. #endif
  69.     {CTLX|'E',        ctlxe},
  70.     {CTLX|'F',        setfillcol},
  71.     {CTLX|'K',        killbuffer},
  72.     {CTLX|'M',        setmode},
  73.     {CTLX|'N',        filename},
  74.     {CTLX|'O',        nextwind},
  75.     {CTLX|'P',        prevwind},
  76.     {CTLX|'S',        filesave},
  77.     {CTLX|'X',        nextbuffer},
  78.     {CTLX|'Z',        enlargewind},
  79.     {META|CTRL|'H',        delbword},
  80.     {META|CTRL|'K',        unbindkey},
  81.     {META|CTRL|'L',        reposition},
  82.     {META|CTRL|'M',        delgmode},
  83.     {META|CTRL|'N',        namebuffer},
  84.     {META|CTRL|'R',        qreplace},
  85.     {META|CTRL|'V',        scrnextdw},
  86.     {META|CTRL|'W',        killpara},
  87.     {META|CTRL|'Z',        scrnextup},
  88.     {META|' ',        setmark},
  89.     {META|'?',        help},
  90.     {META|'!',        reposition},
  91.     {META|'.',        setmark},
  92.     {META|'>',        gotoeob},
  93.     {META|'<',        gotobob},
  94.     {META|'B',        backword},
  95.     {META|'C',        capword},
  96.     {META|'D',        delfword},
  97.     {META|'F',        forwword},
  98.     {META|'G',        gotoline},
  99.     {META|'K',        bindtokey},
  100.     {META|'L',        lowerword},
  101.     {META|'M',        setgmode},
  102.     {META|'N',        gotoeop},
  103.     {META|'P',        gotobop},
  104.     {META|'Q',        fillpara},
  105.     {META|'R',        sreplace},
  106. #if    V7 & BSD
  107.     {META|'S',        bktoshell},
  108. #endif
  109.     {META|'U',        upperword},
  110.     {META|'V',        backpage},
  111.     {META|'W',        copyregion},
  112.     {META|'X',        namedcmd},
  113.     {META|'Z',        quickexit},
  114.     {META|0x7F,              delbword},
  115.  
  116. #if    MSDOS & (HP150 == 0)
  117.     {SPEC|CTRL|'_',        forwhunt},
  118.     {SPEC|CTRL|'S',        backhunt},
  119.     {SPEC|71,        gotobob},
  120.     {SPEC|72,        backline},
  121.     {SPEC|73,        backpage},
  122.     {SPEC|75,        backchar},
  123.     {SPEC|77,        forwchar},
  124.     {SPEC|79,        gotoeob},
  125.     {SPEC|80,        forwline},
  126.     {SPEC|81,        forwpage},
  127.     {SPEC|82,        insspace},
  128.     {SPEC|83,        forwdel},
  129.     {SPEC|115,        backword},
  130.     {SPEC|116,        forwword},
  131.     {SPEC|132,        gotobop},
  132.     {SPEC|118,        gotoeop},
  133. #endif
  134.  
  135. #if    HP150
  136.     {SPEC|32,        backline},
  137.     {SPEC|33,        forwline},
  138.     {SPEC|35,        backchar},
  139.     {SPEC|34,        forwchar},
  140.     {SPEC|44,        gotobob},
  141.     {SPEC|46,        forwpage},
  142.     {SPEC|47,        backpage},
  143.     {SPEC|82,        nextwind},
  144.     {SPEC|68,        openline},
  145.     {SPEC|69,        killtext},
  146.     {SPEC|65,        forwdel},
  147.     {SPEC|64,        ctlxe},
  148.     {SPEC|67,        refresh},
  149.     {SPEC|66,        reposition},
  150.     {SPEC|83,        help},
  151.     {SPEC|81,        deskey},
  152. #endif
  153.  
  154. #if    AMIGA
  155.     {SPEC|'?',        help},
  156.     {SPEC|'A',        backline},
  157.     {SPEC|'B',        forwline},
  158.     {SPEC|'C',        forwchar},
  159.     {SPEC|'D',        backchar},
  160.     {SPEC|'T',        backpage},
  161.     {SPEC|'S',        forwpage},
  162.     {SPEC|'a',        backword},
  163.     {SPEC|'`',        forwword},
  164. #endif
  165.  
  166.     {0x7F,            backdel},
  167.     {0,            NULL}
  168. };
  169.  
  170. #if RAINBOW
  171.  
  172. #include "rainbow.h"
  173.  
  174. /*
  175.  * Mapping table from the LK201 function keys to the internal EMACS character.
  176.  */
  177.  
  178. short lk_map[][2] = {
  179.     Up_Key,                         CTRL+'P',
  180.     Down_Key,                       CTRL+'N',
  181.     Left_Key,                       CTRL+'B',
  182.     Right_Key,                      CTRL+'F',
  183.     Shift+Left_Key,                 META+'B',
  184.     Shift+Right_Key,                META+'F',
  185.     Control+Left_Key,               CTRL+'A',
  186.     Control+Right_Key,              CTRL+'E',
  187.     Prev_Scr_Key,                   META+'V',
  188.     Next_Scr_Key,                   CTRL+'V',
  189.     Shift+Up_Key,                   META+'<',
  190.     Shift+Down_Key,                 META+'>',
  191.     Cancel_Key,                     CTRL+'G',
  192.     Find_Key,                       CTRL+'S',
  193.     Shift+Find_Key,                 CTRL+'R',
  194.     Insert_Key,                     CTRL+'Y',
  195.     Options_Key,                    CTRL+'D',
  196.     Shift+Options_Key,              META+'D',
  197.     Remove_Key,                     CTRL+'W',
  198.     Shift+Remove_Key,               META+'W',
  199.     Select_Key,                     CTRL+'@',
  200.     Shift+Select_Key,               CTLX+CTRL+'X',
  201.     Interrupt_Key,                  CTRL+'U',
  202.     Keypad_PF2,                     META+'L',
  203.     Keypad_PF3,                     META+'C',
  204.     Keypad_PF4,                     META+'U',
  205.     Shift+Keypad_PF2,               CTLX+CTRL+'L',
  206.     Shift+Keypad_PF4,               CTLX+CTRL+'U',
  207.     Keypad_1,                       CTLX+'1',
  208.     Keypad_2,                       CTLX+'2',
  209.     Do_Key,                         CTLX+'E',
  210.     Keypad_4,                       CTLX+CTRL+'B',
  211.     Keypad_5,                       CTLX+'B',
  212.     Keypad_6,                       CTLX+'K',
  213.     Resume_Key,                     META+'!',
  214.     Control+Next_Scr_Key,           CTLX+'N',
  215.     Control+Prev_Scr_Key,           CTLX+'P',
  216.     Control+Up_Key,                 CTLX+CTRL+'P',
  217.     Control+Down_Key,               CTLX+CTRL+'N',
  218.     Help_Key,                       CTLX+'=',
  219.     Shift+Do_Key,                   CTLX+'(',
  220.     Control+Do_Key,                 CTLX+')',
  221.     Keypad_0,                       CTLX+'Z',
  222.     Shift+Keypad_0,                 CTLX+CTRL+'Z',
  223.     Main_Scr_Key,                   CTRL+'C',
  224.     Keypad_Enter,                   CTLX+'!',
  225.     Exit_Key,                       CTLX+CTRL+'C',
  226.     Shift+Exit_Key,                 CTRL+'Z'
  227. };
  228.  
  229. #define lk_map_size     (sizeof(lk_map)/2)
  230. #endif
  231.  
  232.